package com.guanzi.big_data_mq_process.dao;

import java.util.List;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.guanzi.big_data_mq_process.model.bo.UserOrderBO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.guanzi.big_data_mq_process.model.entity.Users;
import com.guanzi.big_data_mq_process.model.vo.UsersVO;
import com.guanzi.big_data_mq_process.model.query.UsersQuery;

/**
 * (Users) 数据库访问层
 *
 * @author xuguang
 * @since 2025-05-06 21:57:45
 */
@Mapper
public interface UsersDao extends BaseMapper<Users> {

    /**
     * 分页查询
     */
    IPage<UsersVO> getPage(Page<Users> page, @Param(Constants.WRAPPER) QueryWrapper<Users> queryWrapper, @Param("query") UsersQuery query);

    /**
     * 获取详情
     */
    UsersVO getInfo(@Param(Constants.WRAPPER) QueryWrapper<Users> queryWrapper);

    /**
     * 获取待导出的数据
     *
     * @return
     */
    List<UserOrderBO> getExportDataList(@Param("start") Integer start);
}

